跳到主要内容

1.9 异非或门教程

异或非门(Exclusive-NOR Gate,简称 XNOR Gate)是逻辑门中的一种特殊门,其操作与异或门(Exclusive-OR Gate)的操作互为反相。在之前的教程中,我们已经学习了异或门。本教程将介绍异或非门。

异或非门

异或非门的操作与异或门的操作互为反相。与基本的与门(AND Gate)实现布尔加法、或门(OR Gate)实现布尔乘法以及非门(NOT Gate)实现反相功能不同,异或非门并没有一个专门的布尔函数定义。它可以通过基本逻辑门(如与门、或门、非门)来实现。下图展示了从异或门构建的异或非门。

alt text

异或非门的逻辑符号和布尔表达式

定义电子元件通常遵循多种标准,我们一般采用 IEC(国际电工委员会)标准和 IEEE(电气和电子工程师协会)标准。以下是 IEEE 和 IEC 标准中的异或非门符号。

alt text

异或非门是一种复合门,其布尔表达式如下:

alt text

异或非门的输出可以表示为:

alt text

异或非门真值表

从异或非门的操作可以看出,当两个输入相同时,输出为高电平(逻辑 1);当两个输入不同时,输出为低电平(逻辑 0)。这可以从真值表中看出。

alt text

使用基本逻辑门实现异或非门

如果某种特定的门无法直接获得,我们可以通过连接多个基本逻辑门来设计它。异或非门可以通过使用与非门(NAND Gate)和或非门(NOR Gate)来实现。

  • 使用或非门实现异或非门 使用或非门实现异或非门的电路如下图所示。
alt text
  • 使用与非门实现异或非门 使用与非门实现异或非门的电路如下图所示。
alt text
  • 使用与非门和或门实现异或非门 使用与非门和或门实现异或非门的电路如下图所示。
alt text

异或非门的脉冲操作

2 输入异或非门的脉冲操作如下图所示。

alt text

最初,当异或非门的两个输入之一为低电平时,输出处于低电平。当两个输入都变为低电平时,异或非门的输出将上升到高电平。当其中一个输入再次变为低电平时,输出也将回到低电平。

3 输入异或非门

在某些情况下,我们需要超过 2 个输入的异或非门。3 输入异或非门的布尔函数如下:

alt text
3 输入异或非门逻辑符号
alt text

3 输入异或非门的真值表如下:

对于异或非门,当偶数个输入为高电平时,输出为高电平。因此,3 输入异或非门也被称为“偶函数异或非门”。

alt text

使用或非门实现异或非门

如果 AABB 是输入,QQ 是异或非门的输出,则:

Q=AB=ABQ = A \odot B = \overline{A \oplus B}
Q=AB=AB+AB=AB+AB+AA+BB=(A+B)(A+B)Q' = A \oplus B = A'B + AB' = A'B + AB' + AA' + BB' = (A + B)(A' + B')
Q=A(A+B)+B(A+B)Q' = A'(A + B) + B'(A + B)

取反:

Q=(A(A+B)+B(A+B))=(A(A+B))(B(A+B))=(A+(A+B))(B+(A+B))Q = (A'(A + B) + B'(A + B))' = (A'(A + B))' \cdot (B'(A + B))' = (A + (A + B)') \cdot (B + (A + B)')

再次取反:

Q=((A+(A+B))(B+(A+B)))=(A+(A+B))+(B+(A+B))Q' = ((A + (A + B)') \cdot (B + (A + B)'))' = (A + (A + B)')' + (B + (A + B)')'

再次取反:

Q=[(A+(A+B))+(B+(A+B))]Q = [ (A + (A + B)')' + (B + (A + B)')' ]'

现在我们可以通过或非门实现异或非门电路。

alt text

使用与非门实现异或非门

Q=AB=(AB+AB)=((A+B)(A+B))Q = \overline{A \oplus B} = (A'B + AB')' = ((A + B)(A' + B'))'

现在我们需要使用与非门实现这个电路。

Q=((A+B)(AB))=(A(AB))(B(AB))Q = ((A + B)(AB)')' = (A \cdot (AB)')' \cdot (B \cdot (AB)')'

取反:

Q=A(AB)+B(AB)=(A(AB))(B(AB))Q' = A \cdot (AB)' + B \cdot (AB)' = (A \cdot (AB)') \cdot (B \cdot (AB)')

再次取反:

Q=(A(AB))(B(AB))Q = (A \cdot (AB)')' \cdot (B \cdot (AB)')'

现在我们可以通过与非门实现异或非门。

alt text

常见的 TTL 和 CMOS 逻辑异或非门集成电路(IC)

以下是一些常用的异或非门集成电路(IC)。

alt text
alt text

引脚说明

alt text

异或非门的应用

异或非门在许多应用中都有使用。以下是一些例子。

用于错误检测电路 异或非门用于检测数字数据传输电路中的奇偶校验位(Odd Parity 或 Even Parity)。它主要用于算术和加密电路中。通过使用 6 个晶体管实现低功耗应用,异或非门可以组合异或门和异或非门的操作。

热交换器水箱 异或非门还被用作热交换器水箱,当水温达到预设水平时,它会触发警报。热交换器电路如下所述。

构造 该电路用于加热热水。它有两个出水口和两个浮标指示器。浮标指示器连接到异或非门(XNOR)的输入端。异或非门的输出连接到警报电路,该电路用于在玻璃烧杯中的水位发生变化时发出警报。烧杯底部有一个加热元件,用于加热一定量的水。

alt text

当水位达到高位时,多余的水将从上部出水口溢出。当水位降至低位时,位于底部的加热元件将不再被水覆盖,因此可能会烧毁。正如之前提到的,当水位上升或下降到一定水平时,它会发出警报。为了实现这一点,需要在水箱内的高位和低位位置放置浮标开关。

当浮标指示器接触到水位时,它会被向上推。这将导致浮标的杠杆与衔铁断开连接。在这种情况下,异或非门的输入为 0。如果浮标指示器没有接触到水位,那么杠杆将连接到 +5 V 电源,使衔铁处于活动状态。在这种情况下,异或非门的输入将为高电平,即等于 1。当两个杠杆都连接到 +5 V 电源或接地电压时,异或非门的两个输入均为 1,因此异或非门的输出为高电平,从而激活警报并提醒人员。

当水位在上部浮标和下部浮标指示器之间时,从上部指示器向异或非门的输入端施加逻辑 1,从下部指示器施加逻辑 0。在这种位置,不会发出警报,因为水位处于所需水平。这就是异或非门作为热交换器电路的使用方式。